// 引入 uni-ajax 模块
import ajax from '@/uni_modules/u-ajax'

export default async function axios(option) {
	let promise = new Promise((resolve, reject) => {
		// 创建请求实例
		const instance = ajax.create({
			// 初始配置 'http://localhost:7001/api'
			baseURL: process.env.NODE_ENV === 'development' ? 
                'https://www.yangmj.cloud/sclhh/api' : 'https://www.yangmj.cloud/sclhh/api'
                
		})

		// 添加请求拦截器
		instance.interceptors.request.use(
			config => {
				//头部添加token
				config.header['token'] = uni.getStorageSync('token')
				return config
			},
			error => {
				return error
			}
		)

		// 添加响应拦截器
		instance.interceptors.response.use(
			response => {
				// console.log(response)
				// 对响应数据做些什么
				if (response.statusCode == 401) {
					uni.redirectTo({
						url: '/pages/login/login.vue'
					})
				} else if (response.statusCode == 200) {
					let data = response.data
					if (data.hasOwnProperty('token')) {
						let token = data.token
						uni.setStorageSync('token', token)
					}
                    return data
				} else {
					uni.showToast({
						icon: 'none',
						title: response.data
					})
				}
			},
			error => {
				console.log('error-------------', error.data)
				// 对响应错误做些什么
				return error.data || error
			}
		)

		instance(option)
			.then((res) => {
				resolve(res);
			}).catch((err) => {
				reject(err);
			});

	});

	return promise
}